From d48212aa7062162128077a72dea7de315da27510 Mon Sep 17 00:00:00 2001 From: Jimi Xenidis Date: Thu, 17 Aug 2006 07:10:57 -0400 Subject: [PATCH] [XEN][POWERPC] Fix PHDR issues with large .data.percpu sections This patch tells the link to only create one PHDR and place all sections in it, also removing an unrequired mapping for the .data.percpu section. This avoids the "Not enough room for program headers (allocated 2, need 3)" Booted on a JS20. Signed-off-by: Tony Breeds Signed-off-by: Hollis Blanchard --- xen/arch/powerpc/xen.lds.S | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/xen/arch/powerpc/xen.lds.S b/xen/arch/powerpc/xen.lds.S index 9449bc9aba..8d087e418d 100644 --- a/xen/arch/powerpc/xen.lds.S +++ b/xen/arch/powerpc/xen.lds.S @@ -10,11 +10,15 @@ ENTRY(_start) SEARCH_DIR("=/usr/local/lib64"); SEARCH_DIR("=/lib64"); SEARCH_DIR("=/usr/lib64"); SEARCH_DIR("=/usr/local/lib"); SEARCH_DIR("=/lib"); SEARCH_DIR("=/usr/lib"); /* Do we need any of these for elf? __DYNAMIC = 0; */ +PHDRS +{ + text PT_LOAD FILEHDR PHDRS; +} SECTIONS { /* Read-only sections, merged into text segment: */ PROVIDE (__executable_start = 0x10000000); . = 0x10000000 + SIZEOF_HEADERS; - .interp : { *(.interp) } + .interp : { *(.interp) } :text .hash : { *(.hash) } .dynsym : { *(.dynsym) } .dynstr : { *(.dynstr) } @@ -121,7 +125,7 @@ SECTIONS __inithcall_end = .; __per_cpu_start = .; - .data.percpu : { *(.data.percpu) } :text + .data.percpu : { *(.data.percpu) } __per_cpu_data_end = .; . = __per_cpu_start + (NR_CPUS << PERCPU_SHIFT); . = ALIGN(STACK_SIZE); -- 2.30.2